Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Making a JIT Compiler and adding Optimization Passes #7

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

AnimeshSinha1309
Copy link
Owner

@AnimeshSinha1309 AnimeshSinha1309 commented Jul 24, 2023

  • A jit compiler produces expression values as outputs
  • A basic optimization pass is ready
  • Tests to see if the evaluation by JIT compiler is correct
  • Tests to see if the optimized LLVM IR is correct

Added termcolor library to color the text we are printing, as well as
demarcate out the outputs better.
@AnimeshSinha1309 AnimeshSinha1309 added the type/module A new module of code being developed label Jul 24, 2023
@AnimeshSinha1309 AnimeshSinha1309 self-assigned this Jul 24, 2023
Making things CLion compatible, so changing the build directory name.
Codegen changed a bit. If it's a top level expression, we wrap it in a
function. And then all function bodies are read evaluated to Value*
using a helper.
Adapted the codegen module to one that dynamically rebinds the module to
the function, if the definition gets changed. Evaluation implemented,
but nothing tested yet.
@AnimeshSinha1309 AnimeshSinha1309 force-pushed the dev/phase-4 branch 6 times, most recently from e4e87ee to 42b21ba Compare August 14, 2023 21:35
The cloud build failed, most probably because the LLVM version from the
tutorial is not the one in the image, so upgrading.
This is the code that should work, but it's completely untested. It does
the JIT stuff and stores the output waiting to be gotten. Has linker
errors on the local runs now.
Just factoring out the code that used to be in a separate file in the
tutorial too.
Just trying it out once if it fixes the compilation.
Seeing that I am getting include errors now, hoping to get a linker
error.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/module A new module of code being developed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant